#ifndef CAMERAUSB_H
#define CAMERAUSB_H

#include "camera.h"

class CameraUsb : public Camera {
    Q_OBJECT

public:
    static CameraUsb& getInstance();
    void setExposure(int exposure);
private:
    unsigned char* buffer;
    unsigned int bufferSize;

    CameraUsb(QObject *parent = nullptr);
    ~CameraUsb();
    bool getIsOpened() override;
    void capRelease() override;
    void capOpen() override;
    cv::Mat getImage() override;

    void* handle;
    bool isOpened;

     cv::VideoCapture cap;

    void testHiconVMS();
};
#endif // CAMERA_H
